package Negocio;

import java.util.Vector;

import Persistencia.AdministradorPersistenciaServicio;

public class Paquete extends Servicio {

	private float descuento;
	private Vector <Servicio> servicios;
	
	public Paquete(String nombre, String unid, float descu) {
		super(nombre, unid, 0);
		this.descuento = descu;
		this.servicios=new Vector<Servicio>();
		AdministradorPersistenciaServicio.getInstancia().InsertPaquete(this,"P");
	}

	//Inicio PR - Agregar Servicios al paquete
	public void agregarServicio(Servicio s) throws Exception{
		if(!this.servicioExistente(s)){
			servicios.add(s);
			AdministradorPersistenciaServicio.getInstancia().InsertarServiciosPaquete(this, s);
		}
		else
			throw new Exception("ServicioYaContenido");
			
	}
	//Fin PR - Agregar Servicios al paquete

	
	//PR -> POLIMORFEAR ESTE METODO!!!!
	public boolean sosEsteServicio(String n) {
		// TODO Auto-generated method stub
		return super.sosEsteServicio(n); 
	}
	
	public Vector <Servicio> getServicios (){
		return servicios;
	}

	public float getDescuento() {
		return descuento;
	}

	public void setDescuento(float descuento) {
		this.descuento = descuento;
	}

	private boolean servicioExistente(Servicio s){
		return this.servicios.contains(s);
	}

	@Override
	public boolean sosPaquete() {
		// TODO Auto-generated method stub
		return true;
	}
}
